C 언어 구조체포인터.c
// 새로운 타입을 만들자...
// 자동차 타입
// 무엇을 관리하고 싶은지???
// - 자동차명
// - 색상
// - 주행거리
// - 종류
#include <stdio.h>
struct Car {
char Name[10]; char Color[10]; long Dist; int Type;
};
void main(void) {
// 자동차 생성
struct Car car[2]; // struct Car 타입의 변수를 car로 선언 : car 개체(오브젝트)
// 자동차 속성 부여
struct Car *pcar; // struct Car 타입을 참조할 수 있는 *pcar 개체 생성
int i;
pcar = car; // 구조체 배열의 시작주소 대입
for (i = 0; i < 2; i++) {
printf("입력 : ");
scanf("%s %s %ld %d"
, &car[i].Name, &car[i].Color, &car[i].Dist, &car[i].Type);
}
// 조건처리 : 생략
// 출력
for (i = 0; i < 2; i++) {
printf("%10s %10s %ld %d\n"
, (*pcar).Name, pcar->Color // 구조체 포인터 표현방식
, car[i].Dist, car[i].Type); // 구조체 배열 표현방식
pcar++; // 포인터연산을 사용해서 포인터 이동
}
}
Comments
Comments are closed